package com.xing.binbackend.pattern.factory12.opensource.beanfactory;

import org.springframework.beans.BeansException;

// spring-beans/src/main/java/org/springframework/beans/factory/BeanFactory.java

/**
 * 1. 核心接口定义（工厂角色）
 */
public interface BeanFactory {
    // 核心工厂方法
    Object getBean(String name) throws BeansException;
    
    <T> T getBean(String name, Class<T> requiredType) throws BeansException;
    
    <T> T getBean(Class<T> requiredType) throws BeansException;

    // 其他辅助方法...
}
